import instance from './instance'
/**
 * @methods 获取轮播图
 * @params
 */
export const getBanner = () => instance.get('/banner', {})
/**
 * @methods 获取首页热门推荐歌单
 * @params  limit: 取出数量  默认 30
*/
export const getHotRecommended = () => instance.get('/personalized?limit=12', {})
/**
 * @methods 获取首页数字专辑-新碟上架
 * @params  limit : 返回数量 , 默认为 30
            offset : 偏移数量，用于分页 
                     如 :( 页数 -1)*30, 其中 30 为 limit 的值 , 默认为 0
*/
export const getAlbumList = () => instance.get('/album/list?limit=12', {})
/**
 * @methods 获取首页榜单
*/
export const getTopList = () => instance.get('/toplist', {})
/**
 * @methods 歌单详情
 * @params id: 歌单id   
 * 可选参数  s: 歌单收藏人数 100 默认为 8
 */
 export const getPlayListDetail = params => instance.get(`/playlist/detail`, {params})
/**
 * @methods 歌单详情动态
 * @params id: 歌单id   
 */
 export const getPlaylistDynDetail = params => instance.get(`/playlist/detail/dynamic`, {params})
/**
 * @methods 获取歌单评论
 * @params 必选 id: 歌单 id   
 *  可选  limit: 取出评论数量 , 默认为 20
 *  offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
 *  before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
 */
 export const getPlaylistComment = params => instance.get(`/comment/playlist`, {params})

/**
 * @methods 发送或回复评论
 * @params 必选 t:1 发送, 2 回复
 *         type: 数字,资源类型,对应歌曲,mv,专辑,歌单,电台,视频对应以下类型 
 *         0: 歌曲  1: mv  2: 歌单  3: 专辑  4: 电台 5: 视频 6: 动态
 *         id:对应资源 id
 *         content :要发送的内容
 *         commentId :回复的评论id (回复评论时必填)
 *  注意：如给动态发送评论，则不需要传 id，需要传动态的 threadId,
 *        如：/comment?t=1&type=6&threadId=A_EV_2_6559519868_32953014&content=test  
 */
 export const comment = params => instance.get(`/comment`, {params})

 /**
 * @methods 获取歌单收藏者
 * @params 必选 id : 歌单 id
 * 可选参数 : limit: 取出评论数量 , 默认为 20
 * offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
 */
 export const getPlaylistSubscribers = params => instance.get(`/playlist/subscribers`, {params})
 
  /**
 * @methods 相关歌单推荐
 * @params 调用此接口,传入歌单 id 可获取相关歌单(对应页面
 * 必选参数：id : 歌单 id
 */
   export const getRelatedPlaylist = params => instance.get(`/related/playlist`, {params})
 /**
 * @methods 数字专辑详情
 * @params 必选参数 id: 专辑id   
 */
  export const getAlbumtDetail = params => instance.get(`/album/detail`, {params})
 /**
 * @methods 获取专辑动态信息 如是否收藏,收藏数,评论数,分享数
 * @params 必选参数 id: 专辑id   
 */
  export const getAlbumtDynamic = params => instance.get(`/album/detail/dynamic`, {params})
 /**
 * @methods 获取专辑内容 
 * @params 必选参数 id: 专辑id   
 */
  export const getAlbumtContent = params => instance.get(`/album`, {params})
/**
 * @methods 获取专辑评论 
 * @params 必选参数 id: 专辑id   
 * 可选参数 : limit: 取出评论数量 , 默认为 20
   offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
   before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
 */
  export const getAlbumComment = params => instance.get(`/comment/album`, {params})
  /**
 * @methods 获取用户详情 
 * @params 必选参数 uid : 用户 id
 */
   export const getUserDetail = params => instance.get(`/user/detail`, {params})
/**
 * @methods 获取用户歌单
 * @params 必选参数 : uid : 用户 id
    可选参数 :
    limit : 返回数量 , 默认为 30
    offset : 偏移数量，用于分页 , 如 :( 页数 -1)*30, 其中 30 为 limit 的值 , 默认为 0
 */
    export const getUserPlayList = params => instance.get(`/user/playlist`, {params})
/**
 * @methods 获取用户播放记录（听歌排行）
 * @params 必选参数 : uid : 用户 id
    可选参数 :
    可选参数 : type : 默认是0 type=1 时只返回 weekData, type=0 时返回 allData
 */
  export const getUserRecord = params => instance.get(`/user/record`, {params})
  /**
 * @methods 获取歌曲详情
 * @params ids: 音乐 id  id(支持多个 id, 用 , 隔开) /song/detail?ids=347230,347231   
 */
 export const getSongDetail = params => instance.get(`/song/detail`, {params})
 /**
 * @methods 获取相似音乐
 * @params 必选参数 : id: 歌曲 id
 */
  export const getSimiSong = params => instance.get(`/simi/song`, {params})
/**
 * @methods 获取相似歌单(包含这首歌的歌单)
 * @params 必选参数 : id: 歌曲 id
 */
   export const getSimiPlaylist = params => instance.get(`/simi/playlist`, {params})
/**
 * @methods 获取歌曲评论
 * @params 必选参数 : id: 音乐 id
 * 可选参数 : limit: 取出评论数量 , 默认为 20
   offset: 偏移数量 , 用于分页 , 如 :( 评论页数 -1)*20, 其中 20 为 limit 的值
   before: 分页参数,取上一页最后一项的 time 获取下一页数据(获取超过5000条评论的时候需要用到)
 */
  export const getMusicComment = params => instance.get(`/comment/music`, {params})
  /**
 * @methods 获取歌词
 * @params 必选参数 : id: 歌曲 id
 */
   export const getLyric = params => instance.get(`/lyric`, {params})
 /**
 * @methods 获取音乐url
 * @params 必选参数 : id : 音乐 id
  可选参数 : br: 码率,默认设置了 999000 即最大码率,如果要 320k 则可设置为 320000,其他类推
 */
   export const getSongUrl = params => instance.get(`/song/url`, {params})
 /**
 * @methods 音乐是否可用
 * @params 必选参数 : id : 音乐 id
  可选参数 : br: 码率,默认设置了 999000 即最大码率,如果要 320k 则可设置为 320000,其他类推
 */
  export const checkMusic = params => instance.get(`/check/music`, {params})
 /**
 * @methods 所有榜单内容摘要*/
  export const getTopListDetail = params => instance.get(`/toplist/detail`, {params})